<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <div>123456789</div>
    <textarea name="" id="demo" cols="30" rows="10"></textarea>
</body>
<script>
    // 键盘事件
    // onkeydown   键盘按键按下时触发 (键盘所有按键均可触发)
    // onkeyup     键盘按键松开时触发 (键盘所有按键均可触发)
    // onkeypress  键盘按键按下时触发 (文本输入相关的按键方法触发)


    // 键盘事件的事件对象
    // key   事件触发时按键输出的字符
    // code  事件触发时按下的按键(键盘符)
    // which/keyCode(IE)    在onkeydown/onkeyup中表示按键触发时对应的键盘码(一个键位一个码)
    //                       在onkeypress 中表示按键输出的字符对应的ASCII码(一个字符一个码)

    // 组合键用法
    // ctrlKey shiftKey  altKey  metaKey

    // ctrl + c
    // ctrl + v
    // ctrl + enter

    // 注意: onkeypress中自带 ctrl+enter的组合键 => 10


    // var demo = document.getElementById("demo");
    // demo.onkeydown = function (e) {
    //     // console.log(e);
    //     // console.log(e.key, e.code);
    //     console.log(e.key, e.code, e.which);
    // }

    // var demo = document.getElementById("demo");
    // demo.onkeypress = function (e) {
    //     // console.log(e);
    //     // console.log(e.key, e.code);
    //     // console.log(e.key, e.code, e.which);
    // }

    demo.onkeydown = function (e) {
        // console.log(e);
        // console.log(e.key, e.code);
        console.log(e.key, e.code, e.which);

        if (e.ctrlKey && e.which == 67) {
            console.log("按下了复制");
        } else if (e.ctrlKey && e.which == 13) {
            console.log("发送消息");
        }
    }

</script>

</html>